package com.cmc.cloud.cmclink.doc.vo.sovo.approvespacevo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;
import java.util.List;

/**
 * 批舱-改配
 * 
 * @author dev89
 * @date 2025/07/28 13:33
 **/
@Data
@AllArgsConstructor
@NoArgsConstructor
@ToString(callSuper = true)
@EqualsAndHashCode
public class UpdateBkgVesselReqVO {
    @Schema(description = "id列表")
    @Size(min = 1, max = 100, message = "id列表长度在{min}到{max}直接")
    private List<Long> ids;

    @Schema(description = "船名", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "船名不能为空")
    @Length(max = 50, message = "船名支持最大长度{max}")
    private String vesselCode;

    @Schema(description = "出口航次", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "出口航次不能为空")
    @Length(max = 50, message = "出口航次最大长度{max}")
    private String voyageEx;

    @Schema(description = "航线代码", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "航线代码不能为空")
    @Length(max = 50, message = "航线代码支持最大长度{max}")
    private String laneCodeEx;
}
